"""
类和对象的关系

1.现实事物：
1.属性
2.行为

2.现实事物又分为：事、物
事：
做核酸：属性：何时、何地、谁；行为：登记、检查、查结果
物：
手机：属性：品牌、型号、颜色、尺寸、重量；行为：打电话、发短信、看视频、玩游戏

总结：既然现实世界的事物有属性和行为，类也有属性和行为。 使用程序中的类，可以完美的描述现实世界的事物


3.之前创建的类，为啥非要创建对象才能使用呢？
答：
- 因为类中封装的是属性和行为，只有创建了对象，才能使用属性和行为。
- 类只是一种程序内的“设计图纸”，需要基于图纸生产实体（对象），才能正常工作，称之为：面向对象编程


4.什么是面向对象编程？
面向对象编程就是，使用对象进行编程。
即，设计类，基于类创建对象，并使用对象来完成具体的工作


5.类和对象的关系是什么？
类：设计图纸
对象：实体（基于图纸生产出来的）


6.面向对象编程中的闹钟举例：
设计闹钟图纸：序列号、零售价、响亮
生产闹钟
流程：设计类，基于类创建对象，由对象做具体的工作
"""


class Clock:
    id = None
    price = None

    def ring(self):
        import winsound  # 内置模块，导入系统声音库【仅支持Windows】
        winsound.Beep(2000, 3000)  # 频率、持续时间【仅支持Windows】


# 生产一个闹钟对象
clock1 = Clock()
clock1.id = "001"
clock1.price = 19.9
print(f"闹钟ID：{clock1.id}，价格：{clock1.price}")
clock1.ring()

# 生产另一个闹钟对象
clock2 = Clock()
clock2.id = "002"
clock2.price = 29.9
print(f"闹钟ID：{clock2.id}，价格：{clock2.price}")
clock2.ring()
